package com.example.travel.mapper;

import com.example.travel.bean.OrderBean;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.web.bind.annotation.RequestParam;

import java.math.BigDecimal;
import java.util.List;

@Mapper
public interface OrderMapper {

    // 景区门票下单
    int buySite(OrderBean order);

    // 民宿下单
    int buyHotel(OrderBean order);

    // 美食下单
    int buyProduct(OrderBean order);

    // 人文活动下单
    int buyActivity(OrderBean order);

    // 旅游线路下单
    int buyLine(OrderBean order);

    // 根据用户名查询订单列表
    List<OrderBean> getOrderList(@Param("userName") String userName, @Param("offset") int offset, @Param("pageSize") int pageSize);

    // 获取最近的订单信息（用于管理员后台）
    List<OrderBean> getRecentOrders(@Param("limit") int limit);

    // 根据订单ID查询订单
    OrderBean getOrderById(@RequestParam("orderID") int orderID, @RequestParam("userName") String userName,@RequestParam("orderCode") String orderCode);

    // 退订
    int refundOrder(@Param("orderID") int orderID);
}
